权限实例1@ 内容 概述 7=ALL 6=sys+client 4=sys 3=client+org 2=client 1=org 概述 先整理【表的访问等级】一些常见的内置实例。 场景1:集团--分公司 +1个sys管理员 =集团系统管理员(sys) +1个实体管理员 =集团管理员 (Client) +N个组织管理员=公司管理员 (Client+Org)(注:默认admin) +N个组织用户 =公司用户 (Org) (注:默认user) 场景2:公司--部门 +1个sys管理员 =公司系统管理员(sys) +1个实体管理员 =公司管理员 (Client) +N个组织管理员=部门管理员 (Client+Org) +N个组织用户 =部门用户 (Org) 规则1:访问控制为表级别。 规则2:访问判断是直接表格存取权限,join不受影响。 规则3:角色只能查看、修改本组织的记录。 最佳实践1:client管理员通常包含\*所有组织,client+org管理员不包含\*。 7=ALL 打印格式 初始化是,system用户在sys实体的所有组织(\*)内置了100个打印格式模板, 由于规则1,其他实体或者组织都只能查看内置数据,但无法修改,可以拷贝。 同时,新实体初始化时,会创建该实体所有组织(\*)的9个打印格式模板。 各个组织都可以创建记录,但是只有自己组织的数据可以被查看或者修改(规则2)。 表:AD_PrintFormat 数据访问层次:ALL (类似的有97个表) 特点:不用考虑角色的访问级别,只需要考虑组织匹配。 6=sys+client 计量单位 system用户在sys实体的所有组织(\*)内置了12个简单单位。 实体的组织管理员(c+o)可以新建本组织的计量单位,其他组织单位只读,可以拷贝。 实体的组织用户(o)只能看到本组织的计量单位,如果本组织没有单位,默认为EA。 对于各个实体,只有角色的访问等级带client等级才可以访问该表(通过可用的窗口或者外键字段)。 实体中新建所有组织(\*)的计量单位,该实体中所有角色可见,除非故意禁止角色访问(\*)组织。 实体中新建某个组织的计量单位,admin(client+org)可见,user(org)只能看到自己组织的单位。 表:C_UOM 数据访问层次:sys+client (类似的有192个表) 特点: 每个组织只能看到的计量单位=(sys单位+实体所有组织单位+本组织的单位) 无所有组织权限的角色,新增产品,可以获取所有单位,新增订单行,只能获取组织的计量单位。?? 4=sys 表、字段、窗口、页签 AD数据对象,只有系统管理员sys可以设置,设置后所有实体生效。 只有访问等级=sys的角色可以访问,其他角色无法查看。 表:AD_tab 数据访问层次:sys (类似的有98个表) 3=client+org 表:C_ElementValue 数据访问层次:client (类似的有458个表) 2=client 会计科目 管理员是c+o,可以访问c级表。也就是只有client(集团)管理员才可以设置会计科目。 组织用户是o,不可以访问c级表。如果组织(分公司)需要新建账套或者科目,此角色不行。 默认*组织表示集团使用,所有c+o的管理员都可以看到。 新建一个管理员角色供所有组织管理员使用,取消*组织的权限,只保留相应组织。 则组织管理员,无法查看集团科目,可以新建组织账套和组织科目表。 表:C_ElementValue 数据访问层次:client (类似的有85个表) 1=org 订单表头、订单明细 表:C_Order,C_OrderLine 数据访问层次:org (类似的有93个表)